﻿//using System.Collections;
//using System.Collections.Generic;
//using UnityEngine;

//public struct Bool
//{
//    //public bool CurrentBool = false;
//    public uint BoolValue ;


//    //public static bool operator ==(Bool lhs, System.Object rhs)
//    //{
//    //    if (rhs == null)
//    //    {
//    //        if (System.Object.ReferenceEquals(lhs, null))
//    //            return true;
//    //        else
//    //            return !lhs.CurrentBool;
//    //    }
//    //    else
//    //    {
//    //        if (System.Object.ReferenceEquals(lhs, null))
//    //            return false;
//    //        else
//    //            return lhs.CurrentBool == ((Bool)rhs).CurrentBool;
//    //    }
//    //    //return System.Object.ReferenceEquals(lhs, rhs);
//    //}

//    //public static bool operator !=(Bool lhs, System.Object rhs)
//    //{
//    //    if (rhs == null)
//    //        if (System.Object.ReferenceEquals(lhs, null))
//    //            return false;
//    //        else
//    //            return lhs.CurrentBool;
//    //    else
//    //    {
//    //        if (System.Object.ReferenceEquals(lhs, null))
//    //            return false;
//    //        else
//    //            return lhs.CurrentBool != ((Bool)rhs).CurrentBool;
//    //    }
//    //    //return !System.Object.ReferenceEquals(lhs, rhs);
//    //}

//    public static bool operator !=(Bool lhs, Bool value)
//    {
//        return (bool)lhs != (bool)value;
//    }

//    public static bool operator ==(Bool lhs, Bool value)
//    {
//        return (bool)lhs == (bool)value;
//    }

//    public static implicit operator Bool(bool v)
//    {
//        Bool B = new Bool();
//        //B.CurrentBool = v;
//        B.BoolValue = (v ? 1u : 0);
//        return B;
//    }

//    public static implicit operator Bool(uint v)
//    {
//        Bool B = new Bool();
//        //B.CurrentBool = v;
//        B.BoolValue = v;
//        return B;
//    }

//    public static implicit operator bool(Bool mc)//隐式声明的class转bool类处理方法
//    {
//        if (System.Object.ReferenceEquals(mc, null))
//        {
//            //mc = false;
//            return false;
//        }
//        return mc.BoolValue!=0;
//    }

//    public static implicit operator uint(Bool mc)//隐式声明的class转bool类处理方法
//    {
//        if (System.Object.ReferenceEquals(mc, null))
//        {
//            //mc = false;
//            return 0;
//        }
//        return mc.BoolValue ;
//    }
//}
